package com.edu.mapper;

import com.edu.bean.Book;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

public interface BookMapper {

    /*
    *   1.查询结果 为 一条数据
    *           对应的POJO类接受
    *               a.方法中的返回值 类型就是POJO类
    *               b.xml中 通过 resultType 来设置 查询结果是 POJO类的 完整限定名（从包路径开始的完整类名）或者是 别名
    * */
    Book selectBookById(int bookId);

    /*
    *   2. 查询结果为一条数据
    *           通通可以使用  Map<String,Object> 接受
    *               a.接口的方法中 使用 Map<String,Object> 返回值
    *               b.xml 中 resultType 使用 map
    * */
    Map<String,Object> selectBookById2(int bookId);

    /*
    *   3.查询结果为多条数据
    *           1.List<POJO>
                   a 接口方法中 使用 List<POJO>
    * */

    List<Book> selectBookByPrice(@Param("minPrice") int minPrice, @Param("maxPrice") int maxPrice);


    /*
    *   4.查询结果为多条
    *
    *
    * */
    List<Map<String,Object>> getAllBookAndPrice();

    /*
    *   查询图书馆 有哪些书
    * */

    int selectBookTypeNum();

    double selectAllBookPrice();

}
